package com.wxg.test;

import static java.util.concurrent.TimeUnit.SECONDS;

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;

/**
 * 摘抄自： http://tool.oschina.net/uploads/apidocs/jdk-zh/java/util/concurrent/ScheduledExecutorService.html
 * 
 * @author pactera
 *
 */
class BeeperControl {
	private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);

	public void beepForAnHour() {
		final Runnable beeper = new Runnable() {
			public void run() {
				System.out.println("beep");
			}
		};
		final ScheduledFuture<?> beeperHandle = scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
		scheduler.schedule(new Runnable() {
			public void run() {
				beeperHandle.cancel(true);
			}
		}, 5 * 60, SECONDS);
	}
	
	public static void main(String[] args) {
		new BeeperControl().beepForAnHour();
	}
}